
package com.dp1.pucp.Reportes.Controlador;


import com.dp1.pucp.Administracion.Controlador.OperarioControlador;
import com.dp1.pucp.Modelo.Clases.Tipoproducto;
import com.dp1.pucp.Reportes.DAO.ReportesDAO;
import com.dp1.pucp.Reportes.Vista.ReporteKardexGUI2;
import com.dp1.pucp.Reportes.Vista.ReporteLogGUI;
import com.dp1.pucp.Reportes.Vista.ReporteProductosGUI;
import com.dp1.pucp.Reportes.Vista.ReporteVentasGUI;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.util.Date;

public class ReporteKardexControlador {

    private ReportesDAO dao;
    private ReporteKardexGUI2 reporteKardexGUI;
    //private ArrayList<Perfil> listaPerfil;
  

    
    public ReporteKardexControlador(ReportesDAO dao, ReporteKardexGUI2 view) {
        
        this.dao = dao;
        this.reporteKardexGUI = view;

        
        this.reporteKardexGUI.addBuscarListener(new buscarKardexListener());
        this.reporteKardexGUI.llenaComboTipo(dao.listarTipoProducto());
        this.reporteKardexGUI.llenaComboProducto(dao.listarProductos(this.reporteKardexGUI.getTipoProducto()));
        this.reporteKardexGUI.addSeleccionDepartamentoListener(new ReporteKardexControlador.seleccionDepartamentoListener());
    }

    
   

    class buscarKardexListener implements ActionListener {

        @Override
        public void actionPerformed(ActionEvent e) {
            String p =null;
            String tp = null;
            if (reporteKardexGUI.getProducto2()==0) {
                p=""; 
                if (reporteKardexGUI.getTipoProducto()==0) tp="";
                if (reporteKardexGUI.getTipoProducto()==1) tp="MP";
                if (reporteKardexGUI.getTipoProducto()==2) tp="PI";
                if (reporteKardexGUI.getTipoProducto()==3) tp="PF";
            }
            else {
               p= reporteKardexGUI.getProducto(); 
                if (reporteKardexGUI.getTipoProducto()==0) tp="";
                if (reporteKardexGUI.getTipoProducto()==1) tp="MP";
                if (reporteKardexGUI.getTipoProducto()==2) tp="PI";
                if (reporteKardexGUI.getTipoProducto()==3) tp="PF";
            }
            
            dao.generarReporteKardex(p,tp);
        }
    }


    class seleccionDepartamentoListener implements ItemListener {

        @Override
        public void itemStateChanged(ItemEvent e) {
            if (e.getStateChange() == ItemEvent.SELECTED) {
                reporteKardexGUI.llenaComboProducto(dao.listarProductos(reporteKardexGUI.getTipoProducto()));
            }
        }
    }
   
   

    
  
    
}
